Systems and methods for pre-paid futures procurement

ABSTRACT

A transaction processor can receive transaction information from a transaction between a customer and a merchant. The transaction information includes an account identifier associated with a financial account of the customer. The processor determines that the account identifier is associated with a fixed price futures contract. The transaction is completed at the current market price. Thereinafter, the processor can determine if the fixed price is lower than the current market price. If the fixed price is lower than the current market price, the process determines the difference in cost for the transaction if the fixed price were used. Then, the processor can create and send a resettlement transaction to the customer&#39;s account to reimburse the customer for the difference. As such, the customer receives a simple method for paying for commodities at a set price without having special payment instruments or special accounts.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is related to non-provisional U.S. patent applicationSer. No. 11/764,324, filed Jun. 18, 2007 by Gary M. Holme et al. andentitled “Unit-Based Prepaid Presentation Instrument Accounts andMethods,” which is a continuation-in-part of U.S. patent applicationSer. No. 11/283,532, filed Nov. 18, 2005, entitled “DerivativeCurrency-Exchange Transactions,” which is a continuation-in-part of U.S.patent application Ser. No. 10/984,354, filed Nov. 8, 2004, entitled“Methods And Systems For Implementing Derivative Transactions,” theentire disclosures of which are incorporated herein by reference for allpurposes.

BACKGROUND

Many businesses require goods to maintain operations. Some of thosegoods may be commodities, which are articles of commerce. For example,UPS™ may require millions of gallons of gasoline to continue operatingthe company's fleet of delivery vans. Gasoline is just one example of acommodity.

Unfortunately, the pricing of commodities, like gasoline, is veryvolatile. The price of the commodity can vary significantly in a shortperiod of time. This volatility in pricing makes budgeting and payingfor the commodities very difficult. Some companies may take aconservative approach and assume the prices will remain at high levels.Unfortunately, this method requires the company to keep great sums ofcash on hand to pay for the gas when those funds could be used moreeffectively in other ventures. Other companies may be more liberal andrisk not having the cash available to pay for the purchased commodity.These problems affect the profitability and effectiveness of businessesthat rely on commodity purchases to do business.

BRIEF SUMMARY

Embodiments disclosed herein generally include systems and methods forproviding fixed price futures contracts that are paid through anelectronic account. A business or other party negotiates a contract topurchase a commodity at a fixed price. As part of the contract, thebusiness receives an electronic account having one or more paymentinstruments, for example “credit cards,” to use to pay for thecommodity. When purchasing the commodity, the business personnel use thepayment instrument.

An account identifier associated with the electronic account andrecorded on the payment instrument is sent to a processor. The processordetermines that the account identifier is associated with a price fixedfutures contract. The transaction is completed at the current marketprice. Thereinafter, the processor can determine if the fixed price islower than the current market price. If the fixed price is lower thanthe current market price, the process determines the difference in costfor the transaction if the fixed price were used. Then, the processorcan create and send a resettlement transaction to the business toreimburse the business for the difference. As such, the businessreceives a convenient method for determining a set price for commoditiesto be purchased. Further, with the payment instruments, the business isprovided a simple method for paying for the commodities at the set pricewithout having special payment instruments or special accounts.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is described in conjunction with the appendedfigures:

FIG. 1 is a block diagram of an embodiment of a system operable toprocess transactions associated with one or more fixed price futurescontracts;

FIG. 2 is a block diagram of an embodiment of a processor operable toidentify and resettle transactions associated with one or more fixedprice futures contracts;

FIGS. 3A-C are embodiments of data structures for communicatinginformation associated with transactions associated with one or morefixed price futures contracts;

FIG. 4 is a flow diagram of an embodiment of a process for identifyingand resettling transactions associated with one or more fixed pricefutures contracts;

FIG. 5 is a flow diagram of an embodiment of a process for identifyingtransactions associated with one or more fixed price futures contracts;

FIG. 6 is a flow diagram of an embodiment of a process for resettlingtransactions associated with one or more fixed price futures contracts;

FIG. 7 is a block diagram of an embodiment of a computing systemoperable to function in one or more embodiments presented herein.

In the appended figures, similar components and/or features may have thesame reference label. Further, various components of the same type maybe distinguished by following the reference label by a dash and a secondlabel that distinguishes among the similar components. If only the firstreference label is used in the specification, the description isapplicable to any one of the similar components having the same firstreference label irrespective of the second reference label.

DETAILED DESCRIPTION

Before describing the systems and methods in detail, an example isherein provided to clarify the embodiments hereinafter described. Abusiness, such as UPS™, may require millions of gallons of gasoline aweek to operate the company's over 90,000 ground vehicles. A change ingas prices of a mere $0.10 means a difference in millions of dollars tothe operations of UPS. To maintain a known cost for the gasoline thatUPS uses, UPS may contract with British Petroleum (BP) to buy all thecompany's gas from BP at a fixed price. For example, UPS would pay a set$2.15 per gallon for gas the company buys from BP. The fixed pricecontract can have other terms. For example, the other terms couldinclude the number of gallons that can be purchased at this price, therequirement that the gas be purchased only at BP gas stations, therequirement that the gas be purchased only in a predetermined geographicarea, the term of the fixed price contract, etc.

In previous futures contracts, the purchaser may be required to pay forall the future goods up front, This requirement would necessitate anenormous cash outlay. In other contracts, the purchaser may be requiredto take possession of all the goods at a future date requiring storingthe goods at some point. Further, a purchaser may receive a stored valuecard having some amount of “goods” associated with the stored valuecard. For example, the purchaser would have a card equivalent to 1,000gallons of gas. All of these methods of executing the futures contractare fraught with problems. Paying for millions of gallons of gas couldrequire a billion dollar cash outlay. Storing the millions of gallons ofgas would require enormous storage infrastructure facilities that wouldcost millions of dollars. Finally, at a customer level, the stored valuecards can be difficult to use at different locations or when the valueon the stored value card was depleted.

Present embodiments provide the business, such as UPS, with an accountsimilar to a credit or debit account. This account is associated withthe fixed price futures contract. Either through BP or a separatefinancial institution working with BP, UPS is issued paymentinstruments, e.g., credit cards, radio frequency identification (RFID)smart cards, etc., that can be used to purchase the gas. UPS gives thepayment instruments to their drivers. When the driver needs gas, thedriver purchases the gas at a BP station with the payment instrument.For example, the drive pays 50 dollars to purchase 20 gallons of gas at$2.50 per gallon.

The transaction information for the gas purchase is sent from thepoint-of-sale device, e.g., the credit card machine at the gas pump, toa processor. The transaction information can include information aboutthe transaction. For example, the transaction information can includethe price per gallon, the number of gallons purchased, the total cost ofthe transaction, the location of the BP station, the date, theidentifier of the merchant, the account identifier associated with theUPS account, etc. The processor reads the account identifier anddetermines that the transaction is associated with the UPS account andthe fixed price contract. The processor then settles the transaction asnormal. In other words, the transaction is approved and money is sentfrom the UPS account to BP's financial institution.

At some time during or after the settlement of the transaction, theprocessor determines if the price per gallon received with thetransaction information is higher than the fixed price annunciated inthe fixed price contract. For example, the processor compares the $2.50per gallon paid at the pump to the $2.15 fixed price. With the pricepaid at the pump higher, the processor determines the difference in thecost of the transaction had the fixed price been used. Here, thedifference is $0.35 per gallon ($2.50 per gallon minus $2.15 per gallon)multiplied by 20 gallons (the number of gallons purchased) or $7.00. Theprocessor creates a resettlement transaction for $7.00 that is sent toBP's financial institution to refund or reimburse UPS for the extracost. As such, UPS is provided gas at the fixed price but uses thesimple payment instrument to make the transaction easy to complete.

An embodiment of a transaction system 100 for completing transactionsassociated with fixed price futures contracts is shown in FIG. 1. Thecomponents in the transaction system 100 can be computer systems asdescribed in conjunction with FIG. 7. Thus, each component can includehardware and/or software configured to or operable to complete the tasksdescribed herein. Further, the components described in FIG. 2 and inother figures can be in communication with each other. “Incommunication” means electrically connected or coupled through one ormore systems or device allowing for the exchange of signals and/or data.

A customer 102 can purchase a commodity or other good from a merchant ata point-of-sale device (POS) 106. The customer 102 can be associatedwith a business or organization that has contracted to purchase thecommodity under a fixed price futures contract (also referred to simplyas a fixed price contract). As part of the contract, the customer 102may receive a payment instrument. The payment instrument can be any typeof device or article that has recorded thereon account information forthe customer. For example, the payment instrument is a VISA credit cardhaving the account identifier embossed on the front of the card andencoded onto a magnetic strip on the back of the card. A smart card orother near field communication device (e.g., an RFID device) may also beused, for example, a PayPal™ device.

During the transaction, the customer 102 presents the payment instrumentto provide account information 104 to the merchant POS 106. For example,the customer swipes the magnetic strip on the credit card in a creditcard device at the merchant POS device 106. The account information caninclude at least one of, but is not limited to, the customer's identity,the customer's address, the customer's personal identification number(PIN), the account identifier associated with the customer's account,etc. The merchant POS device 106 combines some or all of the accountinformation with transaction information into a transaction informationmessage 108. The transaction information can include at least one of,but is not limited to, the price per unit of the good, the number ofgoods purchased, the total cost of the transaction, the location of themerchant POS, the date, the time, etc. After writing the accountinformation and/or transaction information into an electronic message,e.g., a data packet, the merchant POS 106 addresses the transactioninformation message 108 to a processor 110 and sends the transactioninformation message 108 to the processor 110.

In response to receiving the transaction information message 108, theprocessor 110 creates a settlement message 112 with information forsettling payment for the transaction. The settlement message 112 is sentto bank #1 114, which is associated with the customer and the customer'saccount. Bank #1 114 sends a settlement 116 to bank #2 118, which isassociated with the merchant, to settle payment for the transaction. Inother words, bank #1 114 electronically transfers money, in thesettlement 116, to bank #2 118 to pay for the transaction. Inembodiments, the settlement 116 may be a wire transfer, an ACH transfer,a mailed check, a cash transfer, etc. The processor 110, in embodiments,may also determine possibility for payment before sending the settlementinformation 112. For example, the processor determines that the customer102 has sufficient funds or available credit in bank #1 114 to pay forthe transaction. In other embodiments, the processor 110 authenticatesthe customer 102 to ensure this transaction is legitimate. Regardless,the processor 110 can send an authorization 120 to the merchant POS 106that allows the merchant POS 106 to complete the transaction.

The processor 110 can also complete a determination if the transactionis associated with a fixed price contract. From the transactioninformation 108, the processor 110 reads the account identifier. If atleast a portion of the account identifier is associated with a fixedprice contract, and/or the merchant location is included in the terms ofthe contract, the processor 110 determines if there would have been adifference in cost for the transaction if the fixed price were used inthe transaction. Thus, the processor 110 determines if the price perunit in the transaction is higher or possibly lower than the fixed pricein the fixed price contract. If there was a difference, the processor100 can determine the difference and create a resettlement message 122for the difference. The processor 110 sends the resettlement message 122to the merchant's bank #2 118 to reimburse the customer. Bank #2 118sends a resettlement 124 for the difference to the customer's bank #1114. The resettlement 124 may be constructed and sent in a similarmanner to the settlement 116. Alternative embodiments within the scopeof the attached claims are considered, some of which will be explainedhereinafter.

An embodiment of a processor 200 operable to complete a transactionassociated with a fixed price contract is shown in FIG. 2. Processor 200may be the same or similar to processor 110 (FIG. 1). The components inthe processor 200 can be hardware and/or software configured to oroperable to complete the tasks described herein. A processor 200 caninclude one or more of, but is not limited to, a POS interface 202, anidentifier component 204, a settlement engine 206, a bank interface 208,a broker 210, and/or a pre-paid contract database 212.

The POS interface 202 can receive transaction information 216 from oneor more merchant POS devices over a network. Thus, the POS interface 202may receive, read, translate, parse, or process in some way thetransaction information 216. After processing the transactioninformation 216, the POS interface 202 can send the information to theidentifier component 204. The POS interface may also be configured tosend information back to the merchant POS. For example, the POSinterface can send an authorization message to the merchant POS.

An identifier component 204 (or simply referred to as the identifier)determines that the transaction, associated with the transactioninformation 216, is related to or associated with a fixed pricecontract. To accomplish the identification, the identifier 204 reads atleast a portion of the account identifier in the transaction information216. The entire account identifier may be compared to a table of accountidentifiers stored in the pre-paid contract database 212. In addition,the merchant location identified by a merchant identifier of thetransaction may be compared to a table of merchants that is associatedwith the contract. If the account identifier is located in the pre-paidcontract database 212 and/or the merchant location matches a merchant IDin the merchant identifier table, the identifier 204 sends thetransaction information to the broker 210. Otherwise, the transaction iscompleted as normal by the settlement engine 206. In other embodiments,a portion of the account identifier identifies the account identifier asbeing associated with a pre-paid contract. For example, a reserved setof four digits in a sixteen digit account number may signify that theaccount identifier is associated with a pre-paid contract. The accountidentifier is explained further in conjunction with FIGS. 3A-C.

The identifier 204 forwards transaction information 216 from eachtransaction to the settlement engine 206. The settlement engine 206completes a settlement message 214. The settlement message 214 is thesame or similar to settlement information 112 (FIG. 1). The settlementmessage 214 includes any and all information required to affect paymentfor the transaction. The settlement message 206 sends the settlementmessage 214 to the bank interface 208.

The bank interface 208 can transmit the settlement message 206 to one ormore banks over a network. Thus, the bank interface 208 may transmit,compose, write, arrange, encrypt, or process in some way the settlementmessage 206. After processing the settlement message 206, the bankinterface 208 can send the information to the bank. The bank interface208 may also be configured to receive information from the banks. Forexample, the bank interface 208 can receive a confirmation message thatthe settlement has been completed and the transaction paid.

The broker 210 receives the transaction information 216 for transactionsassociated with pre-paid contracts. The broker 210 can read informationabout the price fixed, pre-paid contracts from the pre-paid contractdatabase 212. To ensure the terms of the pre-paid contract aresatisfied, the broker 210 can compare one or more items of informationin the transaction information 216 with related information in the fixedprice contract stored in the pre-paid contract database 212. Forexample, the broker 210 can compare the price for the transaction withthe fixed price. If the fixed price is lower, the broker 210 candetermine the difference in cost for the transaction if the fixed pricewere used. This difference can be sent to the settlement engine 206 tocreate and send a resettlement message 214.

Another term that the broker 210 may review is the date of thetransaction to ensure the transaction is associated with an active fixedprice contract. The broker 210 may determine if the merchant is part ofa merchant file that contains merchants associated with the fixed pricecontract. Further, the broker 210 can determine and store informationfor each transaction in the pre-paid contract database 212. For example,the broker 210 can store the number of units that have been purchasedunder the fixed price contract. If the fixed price contract includes aprovision about the maximum number of units to be sold under thecontract, the broker 210 can check the number of units sold to date todetermine that the current transaction can be processed under the limit.There may be other checks and determinations completed by the broker 210to ensure the transaction should be associated with a fixed pricecontract.

An embodiment of a data structure 300 for transporting transactioninformation from the merchant POS device 106 (FIG. 1) to the processor110 (FIG. 1) is shown in FIG. 3A. The data structure 300, inembodiments, includes fields that cause a computer system to perform oneor more actions. The fields can include one or more of, but are notlimited to, a merchant identifier (MID) field 302, a transaction routinginformation field 304, and/or a transaction details field 306. The MIDfield 302 includes an identifier for the merchant associated with themerchant POS 106 (FIG. 1). The MID 302 may include a globally uniqueidentifier (GUID) or other identifier that allows the processor 110(FIG. 1) to recognize where the settlement information 112 is destinedto be sent. The transaction routing information 304 includes informationthat allows the processor 110 (FIG. 1) to route the settlementinformation 112 (FIG. 1) to the merchant bank 114 (FIG. 1).

The transaction details field 306 includes one or more fields containinginformation about the transaction as shown in FIG. 3B. In embodiments,the transaction details 306 includes at least one of, but is not limitedto (as represented by the ellipses 322), an amount field 310, a dayfield 312, a time field 314, a vendor name field 316, a location field318, and/or a retailer identifier (RID) field 320. The amount field 310includes the amount that needs to be paid to complete the transaction.The amount field 310 can also include data for a number of unitspurchased and a price per unit. The day field 312 includes the day thetransaction occurred. The time field 314 includes the time thetransaction occurred. The vendor name field 316 includes the name of thevendor that owns or operates the merchant POS 106 (FIG. 1). For example,the vendor name may be the name of the gas station that is selling thegas. The location field 318 includes the location of the merchant POS106 (FIG. 1). For example, the location field 318 includes the streetaddress (e.g., 1993 Elm St., Potsdam, N.Y.) where the gas station islocated. The account ID field 320 provides an identifier for the accountassociated with the customer 102. The account ID may be a GUID or otheridentifier that uniquely identifies the customer's account. Anembodiment of the account ID 324 is shown in FIG. 3C.

In embodiments, the account identifier 324 can include one or more of,but is not limited to (as represented by the ellipses 322), a pre-paidor fixed price contract identifier field 326 or a payment accountidentifier 328. The pre-paid contract identifier field 326 can be aportion of the account identifier 324 or may represent the entireaccount identifier 324. The pre-paid contract identifier field 326identifies the account identifier 324 as being associated with a fixedprice futures contract. If the pre-paid contract identifier field 326 isa portion of the entire account identifier 324, then the portion ofdigits may be a standard identifier for all accounts associated with afixed price contract. The pre-paid contract identifier field 326 can beany number of digits, in any location in the account identifier 324, andwith any combination of digits. For example, if the sixteen digitaccount identifier 324 for a credit card has the first four digits of“1111,” then this account identifier 324 may be recognized as beingassociated with a fixed price contract. In other embodiments, the entireaccount identifier 324 is compared to identifiers associated with fixedprice contracts.

The payment account identifier 328 identifies the account from which thesettlement 116 (FIG. 1) is to be sent. Thus, the payment accountidentifier 328 identifies an account at the bank 114 that will havefunds withdrawn or deposited for the transaction. As with the pre-paidcontract identifier field 326, the payment account identifier 328 can beany number of digits, in any location in the account identifier 324, andwith any combination of digits.

In still another embodiment, other contract terms are checked to ensurethat the resettlement should occur. For example, the merchant identifier302 may be checked against a merchant file associated with the fixedprice contract. If the merchant identifier 302 is not included in thefile, then no resettlement is conducted. As such, the fixed pricecontract can motivate customers to use certain merchants. Further, thelocation of the merchant can be checked, the total units sold under thefixed price contract, the termination date for the fixed price contract,etc. As such, the resettlement process can be further defined tomotivate the customer to act in certain ways to the benefit of themerchant.

An embodiment of a method 400 executed at a processor 200 (FIG. 2) forprocessing a transaction associated with a fixed price contract is shownin FIG. 4. In embodiments, the method 400 generally begins with a STARToperation 402 and terminates with an END operation 416. The steps shownin the method 400 may be executed in a computer system as a set ofcomputer-executable instructions. While a logical order is shown in FIG.4, the steps shown or described can, in some circumstances, be executedin a different order than presented herein. The method 400 is explainedherein with reference to FIGS. 1-3C.

A customer 102 contracts with a party for a fixed price contract. Theparty issues to the customer 102 a payment instrument, for example, acredit card. An account number recorded on the payment instrument canidentify the payment instrument as being associated with the fixed pricecontract. When the customer purchases a commodity at a merchant POSdevice 106, the customer 102 presents the payment instrument to providethe merchant POS device 106 with account information 104. The merchantPOS device 106 combines the account information 104 with informationabout the transaction into a transaction information message 108. Aftercreating the transaction information message 108, the merchant POSdevice 106 sends the transaction information message 108 to a processor110. The POS interface 202 of the processor 110 receives the transactioninformation message 108 in step 404.

An identifier 204 forwards the transaction information from thetransaction information message 108 to the settlement engine 206. Thesettlement engine 206 creates a settlement information message 112 andsends the settlement information message 112 to the bank interface 208.The bank interface, in turn, sends the settlement information message112 to bank #1 114 to settle the transaction in step 410. A transfer offunds in a settlement 116 from bank #1 114 to bank #2 118 settles thetransaction.

Contemporaneously or nearly simultaneously with the settlement, theidentifier 204 also parses the transaction information message 300 instep 406. The identifier 204, thus, locates the transaction details 306in the transaction information message 300. Upon locating the properfield, the identifier 204 reads the account identifier field 320 in step408 and the merchant identifier 302 in step 411. The pre-paid contractidentifier 326 is determined from the account identifier 324. Theidentifier 204 determines if the identifiers are associated with a fixedprice contract in step 412.

To accomplish the determination, the identifier 204 may determine if thepre-paid contract identifier 326 is located in the account identifier324 or the MID 302 is associated with the contract. In other words, theidentifier looks for a predetermined and reserved set of digitsidentifying the identifiers as being associated with a fixed pricecontract. For example, does the account identifier 324 include the code“1111” as the first four digits that signify that the account identifier324 is associated with a fixed price contract? In another embodiment,the identifier 204 reads a table in the pre-paid contract database 212that includes an ordered list of identifiers associated with fixed pricecontracts. The identifier 204 determines if the identifiers provided inthe transaction information message 300 are in the list.

If the identifiers are not associated with a fixed price contract, themethod 400 flows NO to end operation 416. However, if and when theidentifiers are associated with a fixed price contract, the method 400flows YES to step 414. Here, the identifier 204 sends the transactioninformation to the broker 210. The broker 210 determines if aresettlement is necessary for the transaction. When a resettlement isnecessary, the broker 210 sends the resettlement information to thesettlement engine 206 to create a resettlement information message 122.The resettlement information message 122 is sent to bank #2 118 whichreimburses the customer 102 by sending a payment in a resettlement 124to bank #1 114.

An embodiment of a method 500 executed at a processor 200 (FIG. 2) thatbetter details the identification of an account identifier 324associated with a fixed price contract is shown in FIG. 5. Inembodiments, the method 500 generally begins with a START operation 502and terminates with an END operation 512. The steps shown in the method500 may be executed in a computer system as a set of computer-executableinstructions. While a logical order is shown in FIG. 5, the steps shownor described can, in some circumstances, be executed in a differentorder than presented herein. The method 400 is explained herein withreference to FIGS. 1-3C.

The identifier 204 reads at least a portion of the account identifier324 received in the transaction details 306 of the transactioninformation message 108 in step 504. For example, the identifier 204reads only the pre-paid contract identifier 326. The identifier 204 maythen compare the pre-paid contract identifier 326 with identifiers forfixed price contracts in step 506. Every fixed price contract may havethe same identifier signifying that the contract is a fixed pricecontract. In alternatives, the identifier 204 compares the pre-paidcontract identifier 326 to an identifier for each fixed price contract.

In response to the comparison, the identifier 204 determines if apositive comparison is made. If the pre-paid contract identifier 326matches the identifier for at least one fixed price contract identifier,there is a positive comparison. A non-positive comparison causes themethod 500 to flow NO to end operation 512. However, if there is apositive comparison, the method 500 flows YES where the identifier 210can optionally read one or more contract terms for the fixed pricecontract in step 510. The identifier 210 can read the contract termsfrom the identified fixed price contract stored in the pre-paid contractdatabase 212. These contract terms and the transaction information canbe passed to the broker 210 for further processing.

An embodiment of a method 600 executed at a processor 200 (FIG. 2) thatbetter details the resettlement process is shown in FIG. 6. Inembodiments, the method 600 generally begins with a START operation 602and terminates with an END operation 616. The steps shown in the method600 may be executed in a computer system as a set of computer-executableinstructions. While a logical order is shown in FIG. 6, the steps shownor described can, in some circumstances, be executed in a differentorder than presented herein. The method 600 is explained herein withreference to FIGS. 1-3C.

After the identifier 204 identifies the fixed price contract, the broker210 receives the information about the fixed price contract and thetransaction information 306. The broker 210 may receive the contractinformation from the identifier 204 or may read the information from thepre-paid contract database 212. From the information, the broker 210 candetermine the fixed price associated with the contract in step 604. Thebroker 210 can then read the price paid during the transaction from theamount field 310.

The broker 210 compares the contract price with the transaction price instep 606. For example, the broker 210 compares a $3.00 per unit price inthe transaction information 306 with a $2.50 per unit price in thecontract. The broker 210 then determines if there is a difference in theprices in step 608. In embodiments, the broker 210 determines if thetransaction price is higher than the contract price. If there is nodifference in price, the method 600 flows NO to end operation 616.However, if there is a difference in price, the method 600 flows YES towhere the broker 210 creates a resettlement transaction in step 610.

A resettlement transaction is a reimbursement to the customer 102 forthe overage the customer 102 pays. For example, if there is an overageof $0.50 per unit between the contract price and the transaction price,the broker 210 can determine a difference in cost for the transaction ifthe contract price would have been used. For example, the broker 210multiplies the overage amount, e.g., $0.50, by the number of unitspurchased as disclosed in the amount field 310, e.g., 100 units. Thedifference, e.g., $50.00, is the amount changed back in theresettlement.

The broker 210 sends the difference amount and other information, theaccount identifiers for the merchant and customer, the routinginformation, etc., to the settlement engine 206. The settlement engine206 creates the resettlement information message 122 and forwards theresettlement information message 122 to the bank interface 208. The bankinterface 208 sends the resettlement information message 122 to the bank#2 118 in step 612. Optionally, the bank #2 118 sends and the bankinterface 208 receives a confirmation for the resettlement in step 614.

Embodiments of the different systems represented in this disclosure,which may include the merchant POS 106 (FIG. 1), the processor 110 (FIG.1), or the systems for bank #1 114 (FIG. 1) or bank #2 118 (FIG. 1), maybe a computer system, such as computer system 700 shown in FIG. 7. Whilea basic computer system is shown, one skilled in the art will recognizethe configuration changes and/or modifications that may be required tomake operable the systems (e.g., merchant POS 106 (FIG. 1), theprocessor 110 (FIG. 1), the systems for bank #1 114 (FIG. 1) or bank #2118 (FIG. 1), etc.) described herein. The computer system 700 comprisesa processor 702, which completes the operations described in conjunctionwith FIGS. 3 through 5 or makes the systems operable as described inconjunction with FIGS. 1 and 2. Further, the computer system 700 canexecute functions in response to receiving the data structures describedin FIGS. 3A-C. The processor 702 may be any type of processor operableto complete the operations or implement the systems described herein.For example, the processor 702 may be an Intel Pentium processor, anASIC, an FPGA, or other device.

The computer system 700 also comprises memory 704 to hold data or codebeing executed by processor 702. The memory 704 may permanently ortemporarily store the instructions described in conjunction with FIGS. 4through 6 or the data elements described in conjunction with FIGS. 3A-C.Memory may be classified as a computer-readable medium, for example,RAM, ROM, magnetic media, optical media, etc.

The computer system 700 also can comprise software elements, includingan operating system and/or other code, such as one or more applicationprograms for the processor 110 (FIG. 1) to resettle transactionsassociated with fixed price futures contracts. The application programsmay comprise computer programs described herein, and/or may be designedto implement methods described herein and/or configure systems describedherein. Merely by way of example, one or more procedures described withrespect to the method(s) discussed in conjunction with FIGS. 4 through 6might be implemented as code and/or instructions executable by thecomputer system 700 (and/or the processor 702 within the computer system700).

A set of these instructions and/or code might be stored on acomputer-readable storage medium, such as the storage device(s) 708 ormemory 704. In some cases, the storage medium might be incorporatedwithin a computer system. In other embodiments, the storage medium mightbe separate from a computer system (i.e., a removable medium, such as acompact disc, etc.), and/or provided in an installation package, suchthat the storage medium can be used to program a general purposecomputer with the instructions/code stored thereon. These instructionsmight take the form of executable code, which is executable by thecomputer system 700 and/or might take the form of source and/orinstallable code, which, upon compilation and/or installation on thecomputer system 700 (e.g., using any of a variety of generally availablecompilers, installation programs, compression/decompression utilities,etc.), then takes the form of executable code.

Further embodiments of the computer system 700 comprise input/output(I/O) modules of systems 706. I/O systems 706 may include displays suchas LCDs, plasma screens, cathode ray tubes, etc. The displays canprovide a visual representation of data to a user. I/O system 706 mayalso include input devices such as mice, keyboards, touch screens, etc.Input devices allow the user to input information into the computersystem. I/O systems 706 may also comprise communication systems such aswired, wireless, or other communication systems. Further, communicationsystems may communicate with peripheral devices, such as printers,modems, or other devices.

Specific details are given in the following description to provide athorough understanding of the embodiments. However, it will beunderstood by one of ordinary skill in the art that the embodiments maybe practiced without these specific details. For example, circuits maybe shown in block diagrams in order not to obscure the embodiments inunnecessary detail. In other instances, well-known circuits, processes,algorithms, structures, and techniques may be shown without unnecessarydetail in order to avoid obscuring the embodiments. In some embodiments,a computing system may be used to execute any of the tasks or operationsdescribed herein. In embodiments, a computing system includes memory anda processor and is operable to execute computer-executable instructionsstored on a computer-readable medium that define processes or operationsdescribed herein.

Also, it is noted that the embodiments may be described as a processwhich is depicted as a flowchart, a flow diagram, a data flow diagram, astructure diagram, or a block diagram. Although a flowchart may describethe operations as a sequential process, many of the operations can beperformed in parallel or concurrently. In addition, the order of theoperations may be rearranged. A process is terminated when itsoperations are completed, but could have additional steps not includedin the figure. A process may correspond to a method, a function, aprocedure, a subroutine, a subprogram, etc. When a process correspondsto a function, its termination corresponds to a return of the functionto the calling function or the main function.

Moreover, as disclosed herein, the term “computer-readable medium” or“storage medium” may represent one or more devices for storing data,including read only memory (ROM), random access memory (RAM), magneticRAM, core memory, magnetic disk storage mediums, optical storagemediums, flash memory devices and/or other machine-readable mediums forstoring information. The term “machine-readable medium” includes, but isnot limited to, portable or fixed storage devices, optical storagedevices, wireless channels and various other mediums capable of storing,containing or carrying instruction(s) and/or data.

Embodiments may be implemented by hardware, software, firmware,middleware, microcode, hardware description languages, or anycombination thereof. When implemented in software, firmware, middlewareor microcode, the program code or code segments to perform the necessarytasks may be stored in a machine-readable medium such as a storagemedium. A processor(s) may perform the necessary tasks. A code segmentmay represent a procedure, a function, a subprogram, a program, aroutine, a subroutine, a module, an object, a software package, a class,or any combination of instructions, data structures, or programstatements. A code segment may be coupled to another code segment or ahardware circuit by passing and/or receiving information, data,arguments, parameters, or memory contents. Information, arguments,parameters, data, etc. may be passed, forwarded, or transmitted via anysuitable means including memory sharing, message passing, token passing,network transmission, etc.

A number of variations and modifications of the invention can also beused. For example, the relationship between the merchant and thecustomer may include a third party. For example, a futures trader maycontract with the customer for the fixed price on the commodity.Thereinafter, the third party can have an associated financialinstitution provide the account and payment instrument. Herein, thesettlement and resettlement processes become more complex. A settlementmay still occur, but the merchant bank may pay the third party for thecommodity. Further, the third party may resettle with the customer foroverages. Thus, the resettlement messages are not sent to the merchantbank but to the third party's bank that sends the resettlement to thecustomer. One skilled in the art will recognize the changes to thestructure of the embodiments to effectuate the inclusion of a thirdparty broker.

Further, the processor 110 may process numerous resettlements over apredetermined period of time, for example, a day. Instead of separatelyresettling each transaction, the processor 110 may create a batch filefor resettlements. The batch file can be organized to make theresettlement process more efficient. For example, all resettlementsassociated with a particular merchant or customer can be batchedtogether. As such, payments can be made in bulk from a merchant or to acustomer. The batch files may be sent at predetermined intervals, e.g.,every day, every hour, etc. Thus, when the payment networks are lessbusy, such as in the night, the resettlements can be processed to makethe payment network less busy and faster.

In light of the above description, a number of advantages of the presentinvention are readily apparent. For example, the customer is offered amethod for receiving a fixed price for commodities. This fixed priceallows customers to have steady costs and budgets. Further, the paymentinstrument allows easy payment and access to the commodities. Themerchants are provided with guaranteed demand and revenue. Further, themerchants can modify the contracts to motivate certain behavior from thecustomers, e.g., purchasing from certain merchants, in certainlocations, during certain dates, etc. Also, third parties can sell andtrade these fixed priced contracts. Thus, the present system and methodsprovide a motivation to create commodity markets that can generate feesand money for traders and brokers.

While the principles of the invention have been described above inconnection with specific apparatuses and methods, it is to be clearlyunderstood that this description is made only by way of example and notas limitation on the scope of the invention.

It will be apparent to those skilled in the art that substantialvariations may be made in accordance with specific requirements. Forexample, customized hardware might also be used, and/or particularelements might be implemented in hardware, software (including portablesoftware, such as applets, etc.), or both. Further, connection to othercomputing devices such as network input/output devices may be employed.

1. A settlement processor system for processing a commodity transactionfor a fixed price, the settlement processor system being part of a thirdparty system and being communicatively coupled with a merchant financialinstitution and a customer financial institution to provide settlementand resettlement services, the settlement processor system comprising:one or more processors; an interface operable, on the one or moreprocessors, to receive information about a transaction from a merchantpoint-of-sale device, wherein the information about the transactionincludes an identifier for a customer account and a price for thetransaction; an identifier component in communication with theinterface, the identifier component operable, on the one or moreprocessors, to determine whether the received identifier is related to afixed price agreement; a settlement engine in communication with theidentifier component, the settlement engine operable, on the one orprocessors, to transmit settlement information to the customer financialinstitution to settle the transaction by transfer of funds to themerchant financial institution; and a broker in communication with thesettlement engine and the identifier component, the broker operable, onthe one or more processors, to receive the transaction information whenthe identifier component determines the received identifier is relatedto a fixed price agreement, the broker operable to generate aresettlement transaction for the difference between the fixed price inthe fixed price contract and the price for the transaction and send theresettlement transaction, wherein the settlement engine transmitsresettlement information to the merchant financial institution toreimburse the customer by transfer of funds to the customer financialinstitution.
 2. The settlement processor system as defined in claim 1,further comprising a pre-paid contract database operable to storeinformation about one or more fixed price contracts.
 3. The settlementprocessor system as defined in claim 2, wherein the identifier componentis operable to read at least a portion of the received identifier todetermine if the transaction is associated with a fixed price contract.4. The settlement processor system as defined in claim 3, wherein theidentifier component is operable to compare at least a portion of thereceived identifier to one or more identifiers for fixed price contractsin the pre-paid contract database to determine if the transaction isassociated with a fixed price contract.
 5. The settlement processorsystem as defined in claim 4, wherein, when at least a portion of thereceived identifier compares to an identifier for the fixed pricecontract in the pre-paid contract database, the broker is operable toread one or more contract terms from the fixed price contract.
 6. Thesettlement processor system as defined in claim 5, wherein the broker isoperable to read the fixed price from the fixed price contract andoperable to compare the fixed price to the price for the transaction. 7.The settlement processor system as defined in claim 6, wherein thebroker is operable to send the resettlement when the fixed price islower than the price for the transaction.
 8. The settlement processorsystem as defined in claim 7, wherein the resettlement is for adifference in a cost for the transaction if the fixed price was usedinstead of the price for the transaction.
 9. The settlement processorsystem as defined in claim 1, wherein the broker creates a resettlementfile for each resettlement to be processed during a predetermined amountof time and sends all the resettlements in the resettlement file as abatch process.
 10. The settlement processor system as defined in claim1, wherein the identifier component is operable to compare a merchant ofthe transaction against a merchant file created for the fixed pricecontract and operable to send a message to the broker to determine aresettlement when the merchant is in the merchant file.
 11. A method forconducting pre-paid futures transactions, the method being executable ina computer system of a third party system communicatively coupled with amerchant financial institution and a customer financial institution, thecomputer system having a processor and memory, and the methodcomprising: the processor receiving transaction information from amerchant, wherein the transaction information includes a transactionprice, a merchant identifier, and an customer account identifier; theprocessor reading the customer account identifier; the processortransmitting settlement information to the customer financialinstitution to settle the transaction by a transfer of funds to themerchant financial institution; the processor comparing at least aportion of the customer account identifier with one or more identifiersfor one or more fixed price contracts to determine if a resettlementtransaction should be conducted; the processor determining the fixedprice associated with the fixed price contract; the processor comparingthe fixed price to the transaction price to determine if the fixed priceis lower than the transaction price; the processor determining adifference in cost for the transaction if the fixed price were used forthe transaction compared to the transaction price; the processorcreating the resettlement transaction for the difference in cost; andthe processor transmitting settlement information associated with theresettlement transaction to the merchant financial institution toreimburse the customer the difference in cost for the transaction bytransfer of funds to the customer financial institution.
 12. The methodas defined in claim 11, further comprising: the processor reading amerchant file associated with the identified fixed price contract; theprocessor determining if the merchant associated with the merchantidentifier is in the merchant file; and when the merchant associatedwith the merchant identifier is in the merchant file, the processorcreating the resettlement transaction.
 13. The method as defined inclaim 11, further comprising: the processor reading one or more otherterms of the fixed price contract; the processor determining if the oneor more other terms are satisfied by the transaction; and when the oneor more other terms are satisfied by the transaction, the processorcreating the resettlement transaction.
 14. The method as defined inclaim 11, further comprising: the processor creating a resettlementbatch file with two or more resettlement transactions created during aperiod of time; and the processor sending all the resettlementtransactions in the resettlement batch file as a batch process.
 15. Themethod as defined in claim 14, wherein the processor creates two or moreresettlement batch files, wherein each resettlement batch file isrelated to one financial institution.
 16. A non-transitorycomputer-readable medium readable by a computer system of a third partysystem communicatively coupled with a merchant financial institution anda customer financial institution, the computer-readable medium havingstored thereon instructions causing the computer system to execute amethod for conducting pre-paid futures transactions, the methodcomprising: instructions for receiving transaction information from amerchant, wherein the transaction information includes a transactionprice, a merchant identifier, and a customer account identifier;instructions for reading the customer account identifier; instructionsfor transmitting settlement information to the customer financialinstitution to settle the transaction by a transfer of funds to themerchant financial institution; instructions for comparing at least aportion of the customer account identifier with one or more identifiersfor one or more fixed price contracts; when at least a portion of thecustomer account identifier compares with an identifier of a fixed pricecontract, instructions for determining if a resettlement transactionshould be conducted; instructions for determining the fixed priceassociated with the fixed price contract; instructions for comparing thefixed price to the transaction price to determine if the fixed price islower than the fixed price; when the fixed price is lower than the fixedprice, determining a difference in cost for the transaction if the fixedprice were used for the transaction compared to the transaction price;instructions for creating the resettlement transaction for thedifference in cost; and instructions for transmitting settlementinformation associated with the resettlement transaction to the merchantfinancial institution to reimburse the customer the difference in costfor the transaction by transfer of funds to the customer financialinstitution.
 17. The non-transitory computer-readable medium as definedin claim 16, further comprising: instructions for reading a merchantfile associated with the identified fixed price contract; instructionsfor determining if the merchant associated with the merchant identifieris in the merchant file; and when the merchant associated with themerchant identifier is in the merchant file, instructions for creatingthe resettlement transaction.